﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SIMCObjetoNegocio
{  // ADM_CARTERAS
    public partial class Portafolio
    {
        public int? Id  { get; set; }//car_inumero
        public int IdTitular { get; set; }//per_icodigo
        public string NombreTitular { get; set; }
        public string TipoPortafolio { get; set; }//car_stp_cartera
        public string DescripcionTipoPortafolio { get; set; }
        public DateTime? FechaCreacion { get; set; }//car_fapertura
        public string DivisaBase { get; set; }//car_sdiv_base
        public int IdGerente { get; set; }//car_igerente
        public string NombreGerente { get; set; }
        public EstadoPortafolioUsuario EstadoAsociacion 
        {
            get
            {
                switch (_EstadoAsociacion.Trim())
                {
                    case "Nuevo": return EstadoPortafolioUsuario.Nuevo;
                    case "Solicitado": return EstadoPortafolioUsuario.Solicitado;
                    case "Rechazado": return EstadoPortafolioUsuario.Rechazado;
                    case "Inactivo": return EstadoPortafolioUsuario.Inactivo;
                    case "Aprobado": return EstadoPortafolioUsuario.Aprobado;
                    default: return  EstadoPortafolioUsuario.Nuevo;
                }
            }
        }
        public EstadoPortafolio Estado
        {
            get
            {
                switch (_Estado)
                {
                    case "N": return EstadoPortafolio.Nuevo;
                    case "M": return EstadoPortafolio.MarginCol;
                    case "0": return EstadoPortafolio.ActivoSinPosiciones;
                    case "1": return EstadoPortafolio.ActivoConPosiciones;
                    case "X": return EstadoPortafolio.Inactivo;
                    case "B": return EstadoPortafolio.BloquearMovimientos;
                    case "C": return EstadoPortafolio.BloquearCalculoBalances;
                    default: return EstadoPortafolio.Nuevo;
                }
            }
        }
        public string Notas { get; set; }//CAR_SNOTAS
        public string NumeroContrato { get; set; }//CAR_SNUM_CONTRATO
        public double PatrimonioNeto { get; set; }//rsc_dneto
        public int? IdResponsableRelacion { get; set; }
        public string IdentificacionTitular { get; set; }
        public string Alias { get; set; }
        public int IdAsociacionUsuarioExterno { get; set; }

        /// ////////////////////No todos los portafolios lo tienen. Solo son carteras administradas los que tengan en la tabla adm_tipos_catrera en la columna de tpc_cmodelo = 1
        public string TipoCarteraAdministrada { get; set; }//En la tabla de portafolio car_smodelo
        public string DescripcionTipoCarteraAdministrada { get; set; }//Descripcion de valor de atributo POMODE en la tabla cla_valores
    }

    public partial class Portafolio
    { 
        public string _EstadoAsociacion {get;set;}
        public string _Estado { get; set; }
    }
}
